home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BBS in a Box 7
/
BBS in a Box - Macintosh - Volume VII (BBS in a Box) (January 1993).iso
/
Files
/
Bus
/
H-L
/
Invoicer.cpt
/
RepeatInvcr
< prev
next >
Wrap
Text File
|
1988-01-22
|
8KB
|
349 lines
DIM DT$(13):DIM CH(13):DIM DA$(13):DIM JD$(13)
CodeChk:
CLS
TEXTSIZE(24):TEXTFACE(5)
PRINT:PRINT SPC(8);"REPEAT INVOICER"
TEXTSIZE(12):TEXTFACE(0)
INPUT"Customer Code ('help' for code list): ",CO$
IF CO$ = "go back" OR CO$ = "back" OR CO$ = "b" THEN FinlScreenTwo
GOSUB ClearItAll
IF CO$="help" OR CO$ = "h" THEN CLS: GOTO ListCodes
IF CO$="temp" THEN CLS:LOAD "Invoicer",R
IF CO$="quit" OR CO$="q" THEN CLS:LOAD "Open Me First",R
IF LEN(CO$)<>2 THEN RUN
GOSUB Code
SecScreen:
CLS
Address:
WINDOW 3,"",(10,45)-(485,145),3
TEXTFACE (1)
PrntScreen:
PRINT CN$
PRINT AD1$
PRINT AD2$;", ";AD3$;" ";
PRINT zp$
PRINT
IF count = 1 THEN GOSUB SkipDate
PRINT"(xx-xx-xxxx)"
INPUT;"Billing Date: ", db$
IF db$ = "" THEN db$=DATE$:CLS: count = 1: GOTO PrntScreen
IF LEN(db$) = 2 THEN CLS: Subdb$ = db$: db$ = LEFT$(DATE$,3) + Subdb$ + RIGHT$(DATE$,5):count = 1: GOTO PrntScreen
IF LEN(db$) = 5 THEN CLS: Subdb$ = db$: db$ = Subdb$ + RIGHT$(DATE$,5):count = 1: GOTO PrntScreen
IF count <>1 THEN SkipDateSkip
IF LEN(db$) <> 8 THEN PrntScreen
SkipDate:
PRINT
PRINT "Billing Date: ";db$;
SkipDateSkip:
PRINT SPC(10);
INPUT;"Balance forward: $",BF$
IF BF$ ="" THEN OPEN CO$ FOR INPUT AS #1: INPUT #1, BF: CLOSE #1:GOTO SkipBF
BF = VAL (BF$)
SkipBF:
WINDOW 4,"",(10,150)-(485,325),3
TEXTFACE(1)
HM = 1
DTail:
IF HM > 1 THEN Detail
JobDescript:
LINE INPUT;"Job Description: ",JD$(HM)
PRINT TAB (40);
IF JD$(HM)="" THEN Detail
GetTheDate:
LINE INPUT "Date: ",DA$(HM)
IF DA$(HM) = "" THEN DA$(HM) = LEFT$(DATE$,6)+RIGHT$(DATE$,2)
IF LEN(DA$(HM)) = 2 THEN SubDA$ = DA$(HM): DA$(HM) = LEFT$(DATE$,3) + SubDA$ + "-" + RIGHT$(DATE$,2)
IF LEN(DA$(HM)) = 5 THEN SubDA$ = DA$(HM): DA$(HM) = SubDA$ + "-" + RIGHT$(DATE$,2)
IF LEN (DA$(HM)) <> 8 THEN GetTheDate
GOSUB ExSpace
Detail:
IF HM = 11 THEN BEEP
LINE INPUT;"Detail: ",DT$(HM)
REM modify glossary
IF DT$(HM) = "t" THEN DT$(HM) = "typesetting"
IF DT$(HM) = "p" THEN DT$(HM) = "paste-up"
IF DT$(HM) = "s" THEN DT$(HM) = "stats"
IF DT$(HM) = "pr" THEN DT$(HM) = "printing"
IF DT$(HM) = "ld" THEN DT$(HM) = "layout/design"
IF DT$(HM) = "i" THEN DT$(HM) = "illustration"
IF DT$(HM)="jd" THEN GOSUB ExSpace:GOTO JobDescript
IF DT$(HM)="" THEN CalcTx
PRINT TAB(40);
INPUT "Charge: $",CH(HM)
HM=HM+1: GOTO DTail
ExSpace:
PRINT
RETURN
CalcTx:
OPEN "Tax Rate" FOR INPUT AS #1
INPUT #1, TaxRate
CLOSE #1
TaxRate$ = STR$(TaxRate*100)
TX=CH(1)
FOR X=2 TO HM-1
TX=TX+CH(X)
NEXT
ST=TX
IF ts$="y" THEN GOTO TxClr
TX=ST*TaxRate
GOTO FinlScreen
TxClr:
TX=0
FinlScreen:
WINDOW CLOSE 3:WINDOW CLOSE 4
FinlScreenTwo:
CLS
WINDOW 3,"",(25,45)-(440,330),3
TEXTSIZE (10):TEXTFACE(1)
PRINT CN$
TEXTFACE(5)
PRINT"Billing Date: ";db$;
FOR lc=1 TO 22
PRINT" ";
NEXT
PRINT SPC(0);"Balance Forward: ";
PRINT USING "$$###.##";BF
TEXTFACE(1)
PRINT
FOR X=1 TO HM-1
Date:
IF DA$(X)="" THEN JbDesc
PRINT TAB(1); DA$(X);
JbDesc:
IF JD$(X)="" THEN Deetl
TEXTFACE(5)
PRINT TAB(13);JD$(X);":"
TEXTFACE(1)
Deetl:
IF DT$(X)="" THEN Again
PRINT TAB(15); DT$(X);
IF CH(X)=0 THEN Again:
PRINT TAB(44);
PRINT USING "$$###.##";CH(X)
Again:
NEXT
PRINT
PRINT:PRINT TAB(1);"Subtotal";
PRINT TAB(44);
PRINT USING "$$###.##";ST
IF TX = 0 THEN FinAmt
PRINT TAB(1);"Tax (";TaxRate$;"%)";
PRINT TAB(44);
PRINT USING "$$###.##";TX
FinAmt:
PRINT TAB(1);"Total this invoice";
PRINT TAB(44);
tt=(ST+TX)
IT$=STR$(tt)
PRINT USING "$$###.##";tt
PRINT TAB (1);"NEW BALANCE FORWARD";
PRINT TAB (44);
bt = (ST+TX+BF)
PRINT USING "$$###.##";bt
Choyce2:
WINDOW 4,"",(445,45)-(507,330),-3
BUTTON 1,1,"print",(7,25)-(55,80),1
BUTTON 2,1,"new",(7,100)-(55,160),1
BUTTON 3,1,"quit",(7,180)-(55,240),1
WHILE DIALOG(0)<>1:WEND
ButtonPushed = DIALOG(1)
IF ButtonPushed=1 THEN PrntWarning
IF ButtonPushed =2 THEN WINDOW CLOSE 3:WINDOW CLOSE 4:GOSUB CodeChk
IF ButtonPushed =3 THEN WINDOW CLOSE 3:WINDOW CLOSE 4:CLS:LOAD "Open Me First",R
PrntWarning:
WINDOW 2,"",(105,190)-(365,270),-2
TEXTFACE(1)
PRINT"Please make sure printer is turned"
PRINT"on and loaded with paper."
BUTTON 1,1,"OK",(105,45)-(165,65),1
BUTTON 2,1,"cancel",(185,45)-(245,65),1
WHILE DIALOG(0)<>1:WEND
ButtonPushed =DIALOG(1)
IF ButtonPushed=1 THEN WINDOW CLOSE 2:WINDOW OUTPUT 4
IF ButtonPushed=2 THEN WINDOW CLOSE 2:WINDOW OUTPUT 4:GOTO Choyce2
FOR mp=1 TO 7
LPRINT CHR$(10)
NEXT
LPRINT TAB(8); CN$
LPRINT TAB(8); AD1$
LPRINT TAB(8); AD2$;", ";AD3$;" ";
LPRINT zp$
FOR mp= 1 TO 2
LPRINT CHR$(10)
NEXT
LPRINT TAB(2);"Billing date: ";db$;
LPRINT TAB(79);
LPRINT USING "$$###.##";BF
FOR m = 1 TO 2
LPRINT CHR$(10)
NEXT
FOR X=1 TO HM-1
Dte:
IF DA$(X)="" THEN JbDes
LPRINT TAB(0);DA$(X);
JbDes:
IF JD$(X)="" THEN Deet
LPRINT TAB(13);CHR$(27);"X";JD$(X);":";
LPRINT CHR$(27);"Y"
Deet:
IF DT$(X)="" THEN Agin
LPRINT TAB(15); DT$(X);
IF CH(X)=0 THEN Agin
LPRINT TAB (60);
LPRINT USING "$$###.##";CH(X)
Agin:
NEXT
LPRINT CHR$(10)
LPRINT TAB(13);"Subtotal";
LPRINT TAB(79);
LPRINT USING "$$###.##";(ST)
IF TX = 0 THEN FAmt
LPRINT TAB(13);"Tax (";TaxRate$;"%)";
LPRINT TAB(79);
LPRINT USING "$$###.##";TX
FAmt:
LPRINT""
LPRINT TAB(13);"Total This Invoice";
LPRINT TAB(79);
LPRINT USING "$$###.##";tt
LPRINT TAB(13);"NEW BALANCE FORWARD";
LPRINT TAB(79);
LPRINT USING "$$###.##";bt
GOTO Choyce2
Code:
CLOSE #1
OPEN "Customers A" FOR INPUT AS #1
ReedIt:
IF EOF(1) THEN CLOSE #1: CLS:TEXTFACE(1):PRINT:PRINT"This customer not on file…":FOR m = 1 TO 2500:NEXT:CLS:RUN
INPUT #1,CD$,CN$,AD1$,AD2$,AD3$,zp$,ts$
IF CD$=CO$ THEN CLOSE #1:GOTO SecScreen
GOTO ReedIt
ListCodes:
CLS
Lst:
OPEN "Customers B" FOR INPUT AS #1
WINDOW 2,"",(25,50)-(476,280),3
OpFile:
TEXTFACE(1)
IF EOF(1) THEN CLOSE #1:TEXTFACE(0):GOTO NewWndw
INPUT #1,CD$,CN$,ts$
PRINT CD$;
PRINT" - ";CN$
GOTO OpFile
NewWndw:
WINDOW 3,"",(25,285)-(476,330),-3
BUTTON 1,1,"again",(55,10)-(130,35),1
BUTTON 2,1,"enter info",(192,10)-(267,35),1
BUTTON 3,1,"quit",(329,10)-(404,35),1
WHILE DIALOG(0)<>1:WEND
ButtonPushed = DIALOG(1)
IF ButtonPushed = 1 THEN Lst
IF ButtonPushed = 2 THEN WINDOW CLOSE 2:WINDOW CLOSE 3:RUN
IF ButtonPushed = 3 THEN LOAD "Open Me First",R
YourChoice:
WINDOW 3,"",(25,285)-(476,330),-3
BUTTON 1,1,"again",(55,10)-(130,35),1
BUTTON 2,1,"print",(192,10)-(267,35),1
BUTTON 3,1,"quit",(329,10)-(404,35),1
WHILE DIALOG(0)<>1:WEND
ButtonPushed =DIALOG(1)
IF ButtonPushed =1 THEN Strt
IF ButtonPushed =2 THEN PrntWarning
IF ButtonPushed =3 THEN CLS:WINDOW OUTPUT 2:CLS:WINDOW OUTPUT 1:CLS: LOAD "Open Me First",R
ClearItAll:
FOR clearall = 1 TO 13
DT$(clearall) = "":DA$(clearall) = "":JD$(clearall) = "":CH(clearall) = 0:
NEXT
RETURN